
;IID_ID2D1Resource GUID $2cd90691,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1Bitmap GUID $a2296057,$ea42,$4099,<$98,$3b,$53,$9f,$b6,$50,$54,$26>
;IID_ID2D1GradientStopCollection GUID $2cd906a7,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1Brush GUID $2cd906a8,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1BitmapBrush GUID $2cd906aa,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1SolidColorBrush GUID $2cd906a9,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1LinearGradientBrush GUID $2cd906ab,$12e2,$11dc,<$9f,$ed,$00,$11,$43,$a0,$55,$f9>
;IID_ID2D1RadialGradientBrush GUID $2cd906ac,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1StrokeStyle GUID $2cd9069d,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1Geometry GUID $2cd906a1,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1RectangleGeometry GUID $2cd906a2,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1RoundedRectangleGeometry GUID $2cd906a3,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1EllipseGeometry GUID $2cd906a4,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1GeometryGroup GUID $2cd906a6,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1TransformedGeometry GUID $2cd906bb,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1SimplifiedGeometrySink $2cd9069e,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1GeometrySink GUID $2cd9069f,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1TessellationSink GUID $2cd906c1,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1PathGeometry GUID $2cd906a5,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1Mesh GUID $2cd906c2,$12e2,$11dc,<$9f,$ed,$00,$11,$43,$a0,$55,$f9>
;IID_ID2D1Layer GUID $2cd9069b,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1DrawingStateBlock GUID $28506e39,$ebf6,$46a1,<$bb,$47,$fd,$85,$56,$5a,$b9,$57>
;IID_ID2D1RenderTarget GUID $2cd90694,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1BitmapRenderTarget GUID $2cd90695,$12e2,$11dc,<$9f,$ed,0,$11,$43,$a0,$55,$f9>
;IID_ID2D1HwndRenderTarget GUID $2cd90698,$12e2,$11dc,<$9f,$ed,$00,$11,$43,$a0,$55,$f9>
;IID_ID2D1GdiInteropRenderTarget GUID $e0db51c3,$6f77,$4bae,<$b3,$d5,$e4,$75,9,$b3,$58,$38>
;IID_ID2D1Factory GUID $1c51bc64,$de61,$46fd,<$98,$99,$63,$a5,$d8,$f0,$39,$50>
;IID_ID2D1DCRenderTarget GUID $617a768b,$e641,$4ad4,<$b2,$9d,$6b,$d8,$a0,$13,$b9,$f>

D2D1_OK = S_OK

interface ID2D1Resource,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory

interface ID2D1Bitmap,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  GetSize,\
	  GetPixelSize,\
	  GetPixelFormat,\
	  GetDpi,\
	  CopyFromBitmap,\
	  CopyFromRenderTarget,\
	  CopyFromMemory

interface ID2D1GradientStopCollection,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  GetGradientStopCount,\
	  GetGradientStops,\
	  GetColorInterpolationGamma,\
	  GetExtendMode

interface ID2D1Brush,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  SetOpacity,\
	  SetTransform,\
	  GetOpacity,\
	  GetTransform

interface ID2D1BitmapBrush,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  SetOpacity,\
	  SetTransform,\
	  GetOpacity,\
	  GetTransform,\
	  SetExtendModeX,\
	  SetExtendModeY,\
	  SetInterpolationMode,\
	  SetBitmap,\
	  GetExtendModeX,\
	  GetExtendModeY,\
	  GetInterpolationMode,\
	  GetBitmap

interface ID2D1SolidColorBrush,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  SetOpacity,\
	  SetTransform,\
	  GetOpacity,\
	  GetTransform,\
	  SetColor,\
	  GetColor

interface ID2D1LinearGradientBrush,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  SetOpacity,\
	  SetTransform,\
	  GetOpacity,\
	  GetTransform,\
	  SetStartPoint,\
	  SetEndPoint,\
	  GetStartPoint,\
	  GetEndPoint,\
	  GetGradientStopCollection

interface ID2D1RadialGradientBrush,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  SetOpacity,\
	  SetTransform,\
	  GetOpacity,\
	  GetTransform,\
	  SetCenter,\
	  SetGradientOriginOffset,\
	  SetRadiusX,\
	  SetRadiusY,\
	  GetCenter,\
	  GetGradientOriginOffset,\
	  GetRadiusX,\
	  GetRadiusY,\
	  GetGradientStopCollection

interface ID2D1StrokeStyle,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  GetStartCap,\
	  GetEndCap,\
	  GetDashCap,\
	  GetMiterLimit,\
	  GetLineJoin,\
	  GetDashOffset,\
	  GetDashStyle,\
	  GetDashesCount,\
	  GetDashes

interface ID2D1Geometry,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  GetBounds,\
	  GetWidenedBounds,\
	  StrokeContainsPoint,\
	  FillContainsPoint,\
	  CompareWithGeometry,\
	  Simplify,\
	  Tessellate,\
	  CombineWithGeometry,\
	  Outline,\
	  ComputeArea,\
	  ComputeLength,\
	  ComputePointAtLength,\
	  Widen

interface ID2D1RectangleGeometry,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  GetBounds,\
	  GetWidenedBounds,\
	  StrokeContainsPoint,\
	  FillContainsPoint,\
	  CompareWithGeometry,\
	  Simplify,\
	  Tessellate,\
	  CombineWithGeometry,\
	  Outline,\
	  ComputeArea,\
	  ComputeLength,\
	  ComputePointAtLength,\
	  Widen,\
	  GetRect

interface ID2D1RoundedRectangleGeometry,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  GetBounds,\
	  GetWidenedBounds,\
	  StrokeContainsPoint,\
	  FillContainsPoint,\
	  CompareWithGeometry,\
	  Simplify,\
	  Tessellate,\
	  CombineWithGeometry,\
	  Outline,\
	  ComputeArea,\
	  ComputeLength,\
	  ComputePointAtLength,\
	  Widen,\
	  GetRoundedRect

interface ID2D1EllipseGeometry,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  GetBounds,\
	  GetWidenedBounds,\
	  StrokeContainsPoint,\
	  FillContainsPoint,\
	  CompareWithGeometry,\
	  Simplify,\
	  Tessellate,\
	  CombineWithGeometry,\
	  Outline,\
	  ComputeArea,\
	  ComputeLength,\
	  ComputePointAtLength,\
	  Widen,\
	  GetEllipse

interface ID2D1GeometryGroup,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  GetBounds,\
	  GetWidenedBounds,\
	  StrokeContainsPoint,\
	  FillContainsPoint,\
	  CompareWithGeometry,\
	  Simplify,\
	  Tessellate,\
	  CombineWithGeometry,\
	  Outline,\
	  ComputeArea,\
	  ComputeLength,\
	  ComputePointAtLength,\
	  Widen,\
	  GetFillMode,\
	  GetSourceGeometryCount,\
	  GetSourceGeometries

interface ID2D1TransformedGeometry,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  GetBounds,\
	  GetWidenedBounds,\
	  StrokeContainsPoint,\
	  FillContainsPoint,\
	  CompareWithGeometry,\
	  Simplify,\
	  Tessellate,\
	  CombineWithGeometry,\
	  Outline,\
	  ComputeArea,\
	  ComputeLength,\
	  ComputePointAtLength,\
	  Widen,\
	  GetSourceGeometry,\
	  GetTransform

interface ID2D1SimplifiedGeometrySink,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  SetFillMode,\
	  SetSegmentFlags,\
	  BeginFigure,\
	  AddLines,\
	  AddBeziers,\
	  EndFigure,\
	  Close

interface ID2D1GeometrySink,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  SetFillMode,\
	  SetSegmentFlags,\
	  BeginFigure,\
	  AddLines,\
	  AddBeziers,\
	  EndFigure,\
	  Close,\
	  AddLine,\
	  AddBezier,\
	  AddQuadraticBezier,\
	  AddQuadraticBeziers,\
	  AddArc

interface ID2D1TessellationSink,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  AddTriangles,\
	  Close

interface ID2D1PathGeometry,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  GetBounds,\
	  GetWidenedBounds,\
	  StrokeContainsPoint,\
	  FillContainsPoint,\
	  CompareWithGeometry,\
	  Simplify,\
	  Tessellate,\
	  CombineWithGeometry,\
	  Outline,\
	  ComputeArea,\
	  ComputeLength,\
	  ComputePointAtLength,\
	  Widen,\
	  Open,\
	  Stream,\
	  GetSegmentCount,\
	  GetFigureCount

interface ID2D1Mesh,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  Open

interface ID2D1Layer,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  GetSize

interface ID2D1DrawingStateBlock,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  GetDescription,\
	  SetDescription,\
	  SetTextRenderingParams,\
	  GetTextRenderingParams

interface ID2D1RenderTarget,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  CreateBitmap,\
	  CreateBitmapFromWicBitmap,\
	  CreateSharedBitmap,\
	  CreateBitmapBrush,\
	  CreateSolidColorBrush,\
	  CreateGradientStopCollection,\
	  CreateLinearGradientBrush,\
	  CreateRadialGradientBrush,\
	  CreateCompatibleRenderTarget,\
	  CreateLayer,\
	  CreateMesh,\
	  DrawLine,\
	  DrawRectangle,\
	  FillRectangle,\
	  DrawRoundedRectangle,\
	  FillRoundedRectangle,\
	  DrawEllipse,\
	  FillEllipse,\
	  DrawGeometry,\
	  FillGeometry,\
	  FillMesh,\
	  FillOpacityMask,\
	  DrawBitmap,\
	  DrawText,\
	  DrawTextLayout,\
	  DrawGlyphRun,\
	  SetTransform,\
	  GetTransform,\
	  SetAntialiasMode,\
	  GetAntialiasMode,\
	  SetTextAntialiasMode,\
	  GetTextAntialiasMode,\
	  SetTextRenderingParams,\
	  GetTextRenderingParams,\
	  SetTags,\
	  GetTags,\
	  PushLayer,\
	  PopLayer,\
	  Flush,\
	  SaveDrawingState,\
	  RestoreDrawingState,\
	  PushAxisAlignedClip,\
	  PopAxisAlignedClip,\
	  Clear,\
	  BeginDraw,\
	  EndDraw,\
	  GetPixelFormat,\
	  SetDpi,\
	  GetDpi,\
	  GetSize,\
	  GetPixelSize

interface ID2D1BitmapRenderTarget,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  CreateBitmap,\
	  CreateBitmapFromWicBitmap,\
	  CreateSharedBitmap,\
	  CreateBitmapBrush,\
	  CreateSolidColorBrush,\
	  CreateGradientStopCollection,\
	  CreateLinearGradientBrush,\
	  CreateRadialGradientBrush,\
	  CreateCompatibleRenderTarget,\
	  CreateLayer,\
	  CreateMesh,\
	  DrawLine,\
	  DrawRectangle,\
	  FillRectangle,\
	  DrawRoundedRectangle,\
	  FillRoundedRectangle,\
	  DrawEllipse,\
	  FillEllipse,\
	  DrawGeometry,\
	  FillGeometry,\
	  FillMesh,\
	  FillOpacityMask,\
	  DrawBitmap,\
	  DrawText,\
	  DrawTextLayout,\
	  DrawGlyphRun,\
	  SetTransform,\
	  GetTransform,\
	  SetAntialiasMode,\
	  GetAntialiasMode,\
	  SetTextAntialiasMode,\
	  GetTextAntialiasMode,\
	  SetTextRenderingParams,\
	  GetTextRenderingParams,\
	  SetTags,\
	  GetTags,\
	  PushLayer,\
	  PopLayer,\
	  Flush,\
	  SaveDrawingState,\
	  RestoreDrawingState,\
	  PushAxisAlignedClip,\
	  PopAxisAlignedClip,\
	  Clear,\
	  BeginDraw,\
	  EndDraw,\
	  GetPixelFormat,\
	  SetDpi,\
	  GetDpi,\
	  GetSize,\
	  GetPixelSize,\
	  GetBitmap

interface ID2D1HwndRenderTarget,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  CreateBitmap,\
	  CreateBitmapFromWicBitmap,\
	  CreateSharedBitmap,\
	  CreateBitmapBrush,\
	  CreateSolidColorBrush,\
	  CreateGradientStopCollection,\
	  CreateLinearGradientBrush,\
	  CreateRadialGradientBrush,\
	  CreateCompatibleRenderTarget,\
	  CreateLayer,\
	  CreateMesh,\
	  DrawLine,\
	  DrawRectangle,\
	  FillRectangle,\
	  DrawRoundedRectangle,\
	  FillRoundedRectangle,\
	  DrawEllipse,\
	  FillEllipse,\
	  DrawGeometry,\
	  FillGeometry,\
	  FillMesh,\
	  FillOpacityMask,\
	  DrawBitmap,\
	  DrawText,\
	  DrawTextLayout,\
	  DrawGlyphRun,\
	  SetTransform,\
	  GetTransform,\
	  SetAntialiasMode,\
	  GetAntialiasMode,\
	  SetTextAntialiasMode,\
	  GetTextAntialiasMode,\
	  SetTextRenderingParams,\
	  GetTextRenderingParams,\
	  SetTags,\
	  GetTags,\
	  PushLayer,\
	  PopLayer,\
	  Flush,\
	  SaveDrawingState,\
	  RestoreDrawingState,\
	  PushAxisAlignedClip,\
	  PopAxisAlignedClip,\
	  Clear,\
	  BeginDraw,\
	  EndDraw,\
	  GetPixelFormat,\
	  SetDpi,\
	  GetDpi,\
	  GetSize,\
	  GetPixelSize,\
	  CheckWindowState,\
	  Resize,\
	  GetHwnd

interface ID2D1GdiInteropRenderTarget,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetDC,\
	  ReleaseDC

interface ID2D1DCRenderTarget,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  GetFactory,\
	  CreateBitmap,\
	  CreateBitmapFromWicBitmap,\
	  CreateSharedBitmap,\
	  CreateBitmapBrush,\
	  CreateSolidColorBrush,\
	  CreateGradientStopCollection,\
	  CreateLinearGradientBrush,\
	  CreateRadialGradientBrush,\
	  CreateCompatibleRenderTarget,\
	  CreateLayer,\
	  CreateMesh,\
	  DrawLine,\
	  DrawRectangle,\
	  FillRectangle,\
	  DrawRoundedRectangle,\
	  FillRoundedRectangle,\
	  DrawEllipse,\
	  FillEllipse,\
	  DrawGeometry,\
	  FillGeometry,\
	  FillMesh,\
	  FillOpacityMask,\
	  DrawBitmap,\
	  DrawText,\
	  DrawTextLayout,\
	  DrawGlyphRun,\
	  SetTransform,\
	  GetTransform,\
	  SetAntialiasMode,\
	  GetAntialiasMode,\
	  SetTextAntialiasMode,\
	  GetTextAntialiasMode,\
	  SetTextRenderingParams,\
	  GetTextRenderingParams,\
	  SetTags,\
	  GetTags,\
	  PushLayer,\
	  PopLayer,\
	  Flush,\
	  SaveDrawingState,\
	  RestoreDrawingState,\
	  PushAxisAlignedClip,\
	  PopAxisAlignedClip,\
	  Clear,\
	  BeginDraw,\
	  EndDraw,\
	  GetPixelFormat,\
	  SetDpi,\
	  GetDpi,\
	  GetSize,\
	  GetPixelSize,\
	  BindDC

interface ID2D1Factory,\
	  QueryInterface,\
	  AddRef,\
	  Release,\
	  ReloadSystemMetrics,\
	  GetDesktopDpi,\
	  CreateRectangleGeometry,\
	  CreateRoundedRectangleGeometry,\
	  CreateEllipseGeometry,\
	  CreateGeometryGroup,\
	  CreateTransformedGeometry,\
	  CreatePathGeometry,\
	  CreateStrokeStyle,\
	  CreateDrawingStateBlock,\
	  CreateWicBitmapRenderTarget,\
	  CreateHwndRenderTarget,\
	  CreateDxgiSurfaceRenderTarget,\
	  CreateDCRenderTarget

;dcommon.h, d2derror.h, d2dbasetypes.h, dxgiformats.h, d2d1.h, d2d1helper.h

;Copyright (c) Microsoft Corporation.  All rights reserved.
;This file is automatically generated.  Please do not edit it directly.
;File name: D2D1.h

;Copyright (c) Microsoft Corporation.  All rights reserved.
;Abstract:  Public API definitions for DWrite and D2D

DWRITE_TEXT_MEASURING_METHOD_USE_IDEAL_METRICS = 0
DWRITE_TEXT_MEASURING_METHOD_USE_DISPLAY_COMPATIBLE_METRICS = 1
DWRITE_TEXT_MEASURING_METHOD_USE_DISPLAY_NATURAL_METRICS = 2

;D2D Status Codes d2derror.h
D2DERR_UNSUPPORTED_PIXEL_FORMAT = $88982f80
D2DERR_INSUFFICIENT_BUFFER = $8007007a
D2DERR_WRONG_STATE = $88990001
D2DERR_NOT_INITIALIZED = $88990002
D2DERR_UNSUPPORTED_OPERATION = $88990003
D2DERR_SCANNER_FAILED = $88990001
D2DERR_SCREEN_ACCESS_DENIED = $88990005
D2DERR_DISPLAY_STATE_INVALID = $88990006
D2DERR_ZERO_VECTOR = $88990007
D2DERR_INTERNAL_ERROR = $88990008
D2DERR_DISPLAY_FORMAT_NOT_SUPPORTED = $88990009
D2DERR_INVALID_CALL = $8899000A
D2DERR_NO_HARDWARE_DEVICE = $8899000B
D2DERR_RECREATE_TARGET = $8899000C
D2DERR_TOO_MANY_SHADER_ELEMENTS = $8899000D
D2DERR_SHADER_COMPILE_FAILED = $8899000E
D2DERR_MAX_TEXTURE_SIZE_EXCEEDED = $8899000F
D2DERR_UNSUPPORTED_VERSION = $88990010
D2DERR_BAD_NUMBER = $88990011
D2DERR_WRONG_FACTORY = $88990012
D2DERR_LAYER_ALREADY_IN_USE = $88990013
D2DERR_POP_CALL_DID_NOT_MATCH_PUSH = $88990014
D2DERR_WRONG_RENDER_TARGET = $88990015
D2DERR_PUSH_POP_UNBALANCED = $88990016
D2DERR_RENDER_TARGET_HAS_LAYER_OR_CLIPRECT = $88990017
D2DERR_INCOMPATIBLE_BRUSH_TYPES = $88990018
D2DERR_WIN32_ERROR = $88990019
D2DERR_TARGET_NOT_GDI_COMPATIBLE = $8899001A
D2DERR_TEXT_EFFECT_IS_WRONG_TYPE = $8899001B
D2DERR_TEXT_RENDERER_NOT_RELEASED = $8899001C

;Copyright (c) Microsoft Corporation.  All rights reserved.
;This file is automatically generated.  Please do not edit it directly.
;File name: D2DBaseTypes.h

struct D3DCOLORVALUE
       r dd ?
       g dd ?
       b dd ?
       a dd ?
ends

struct D2DPOINT2U
       x dd ?
       y dd ?
ends

struct D2DPOINT2F
       x dd ?
       y dd ?
ends

struct D2DRECTF
       left dd ?
       top dd ?
       right dd ?
       bottom dd ?
ends

struct D2DRECTU
       left dd ?
       top dd ?
       right dd ?
       bottom dd ?
ends

struct D2DSIZEF
       width dd ?
       height dd ?
ends

struct D2DSIZEU
       width dd ?
       height dd ?
ends

struct D2DMATRIX3X2F
       _11 dd ?
       _12 dd ?
       _21 dd ?
       _22 dd ?
       _31 dd ?
       _32 dd ?
ends

DXGI_FORMAT_DEFINED = 1

DXGI_FORMAT_UNKNOWN = 0
DXGI_FORMAT_R32G32B32A32_TYPELESS = 1
DXGI_FORMAT_R32G32B32A32_FLOAT = 2
DXGI_FORMAT_R32G32B32A32_UINT = 3
DXGI_FORMAT_R32G32B32A32_SINT = 4
DXGI_FORMAT_R32G32B32_TYPELESS = 5
DXGI_FORMAT_R32G32B32_FLOAT = 6
DXGI_FORMAT_R32G32B32_UINT = 7
DXGI_FORMAT_R32G32B32_SINT = 8
DXGI_FORMAT_R16G16B16A16_TYPELESS = 9
DXGI_FORMAT_R16G16B16A16_FLOAT = 10
DXGI_FORMAT_R16G16B16A16_UNORM = 11
DXGI_FORMAT_R16G16B16A16_UINT = 12
DXGI_FORMAT_R16G16B16A16_SNORM = 13
DXGI_FORMAT_R16G16B16A16_SINT = 14
DXGI_FORMAT_R32G32_TYPELESS = 15
DXGI_FORMAT_R32G32_FLOAT = 16
DXGI_FORMAT_R32G32_UINT = 17
DXGI_FORMAT_R32G32_SINT = 18
DXGI_FORMAT_R32G8X24_TYPELESS = 19
DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 20
DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 21
DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 22
DXGI_FORMAT_R10G10B10A2_TYPELESS = 23
DXGI_FORMAT_R10G10B10A2_UNORM = 24
DXGI_FORMAT_R10G10B10A2_UINT = 25
DXGI_FORMAT_R11G11B10_FLOAT = 26
DXGI_FORMAT_R8G8B8A8_TYPELESS = 27
DXGI_FORMAT_R8G8B8A8_UNORM = 28
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 29
DXGI_FORMAT_R8G8B8A8_UINT = 30
DXGI_FORMAT_R8G8B8A8_SNORM = 31
DXGI_FORMAT_R8G8B8A8_SINT = 32
DXGI_FORMAT_R16G16_TYPELESS = 33
DXGI_FORMAT_R16G16_FLOAT = 34
DXGI_FORMAT_R16G16_UNORM = 35
DXGI_FORMAT_R16G16_UINT = 36
DXGI_FORMAT_R16G16_SNORM = 37
DXGI_FORMAT_R16G16_SINT = 38
DXGI_FORMAT_R32_TYPELESS = 39
DXGI_FORMAT_D32_FLOAT = 40
DXGI_FORMAT_R32_FLOAT = 41
DXGI_FORMAT_R32_UINT = 42
DXGI_FORMAT_R32_SINT = 43
DXGI_FORMAT_R24G8_TYPELESS = 44
DXGI_FORMAT_D24_UNORM_S8_UINT = 45
DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 46
DXGI_FORMAT_X24_TYPELESS_G8_UINT = 47
DXGI_FORMAT_R8G8_TYPELESS = 48
DXGI_FORMAT_R8G8_UNORM = 49
DXGI_FORMAT_R8G8_UINT = 50
DXGI_FORMAT_R8G8_SNORM = 51
DXGI_FORMAT_R8G8_SINT = 52
DXGI_FORMAT_R16_TYPELESS = 53
DXGI_FORMAT_R16_FLOAT = 54
DXGI_FORMAT_D16_UNORM = 55
DXGI_FORMAT_R16_UNORM = 56
DXGI_FORMAT_R16_UINT = 57
DXGI_FORMAT_R16_SNORM = 58
DXGI_FORMAT_R16_SINT = 59
DXGI_FORMAT_R8_TYPELESS = 60
DXGI_FORMAT_R8_UNORM = 61
DXGI_FORMAT_R8_UINT = 62
DXGI_FORMAT_R8_SNORM = 63
DXGI_FORMAT_R8_SINT = 64
DXGI_FORMAT_A8_UNORM = 65
DXGI_FORMAT_R1_UNORM = 66
DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 67
DXGI_FORMAT_R8G8_B8G8_UNORM = 68
DXGI_FORMAT_G8R8_G8B8_UNORM = 69
DXGI_FORMAT_BC1_TYPELESS = 70
DXGI_FORMAT_BC1_UNORM = 71
DXGI_FORMAT_BC1_UNORM_SRGB = 72
DXGI_FORMAT_BC2_TYPELESS = 73
DXGI_FORMAT_BC2_UNORM = 74
DXGI_FORMAT_BC2_UNORM_SRGB = 75
DXGI_FORMAT_BC3_TYPELESS = 76
DXGI_FORMAT_BC3_UNORM = 77
DXGI_FORMAT_BC3_UNORM_SRGB = 78
DXGI_FORMAT_BC4_TYPELESS = 79
DXGI_FORMAT_BC4_UNORM = 80
DXGI_FORMAT_BC4_SNORM = 81
DXGI_FORMAT_BC5_TYPELESS = 82
DXGI_FORMAT_BC5_UNORM = 83
DXGI_FORMAT_BC5_SNORM = 84
DXGI_FORMAT_B5G6R5_UNORM = 85
DXGI_FORMAT_B5G5R5A1_UNORM = 86
DXGI_FORMAT_B8G8R8A8_UNORM = 87
DXGI_FORMAT_B8G8R8X8_UNORM = 88
DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM	= 89
DXGI_FORMAT_B8G8R8A8_TYPELESS = 90
DXGI_FORMAT_B8G8R8A8_UNORM_SRGB = 91
DXGI_FORMAT_B8G8R8X8_TYPELESS = 92
DXGI_FORMAT_B8G8R8X8_UNORM_SRGB = 93
DXGI_FORMAT_BC6H_TYPELESS = 94
DXGI_FORMAT_BC6H_UF16 = 95
DXGI_FORMAT_BC6H_SF16 = 96
DXGI_FORMAT_BC7_TYPELESS  = 97
DXGI_FORMAT_BC7_UNORM = 98
DXGI_FORMAT_BC7_UNORM_SRGB = 99
DXGI_FORMAT_FORCE_UINT = $ffffffff

D2D1_INVALID_TAG = ULONGLONG_MAX
D2D1_DEFAULT_FLATTENING_TOLERANCE = 0.25

D2D1_ALPHA_MODE_UNKNOWN = 0
D2D1_ALPHA_MODE_PREMULTIPLIED = 1
D2D1_ALPHA_MODE_STRAIGHT = 2
D2D1_ALPHA_MODE_IGNORE = 3
D2D1_ALPHA_MODE_FORCE_DWORD = $ffffffff

D2D1_GAMMA_2_2 = 0
D2D1_GAMMA_1_0 = 1
D2D1_GAMMA_FORCE_DWORD = $ffffffff

D2D1_EXTEND_MODE_CLAMP = 0
D2D1_EXTEND_MODE_WRAP = 1
D2D1_EXTEND_MODE_MIRROR = 2
D2D1_EXTEND_MODE_FORCE_DWORD = $ffffffff

D2D1_ANTIALIAS_MODE_PER_PRIMITIVE = 0
D2D1_ANTIALIAS_MODE_ALIASED = 1
D2D1_ANTIALIAS_MODE_FORCE_DWORD = $ffffffff

D2D1_TEXT_ANTIALIAS_MODE_DEFAULT = 0
D2D1_TEXT_ANTIALIAS_MODE_CLEARTYPE = 1
D2D1_TEXT_ANTIALIAS_MODE_GRAYSCALE = 2
D2D1_TEXT_ANTIALIAS_MODE_ALIASED = 3
D2D1_TEXT_ANTIALIAS_MODE_FORCE_DWORD = $ffffffff

D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR = 0
D2D1_BITMAP_INTERPOLATION_MODE_LINEAR = 1
D2D1_BITMAP_INTERPOLATION_MODE_FORCE_DWORD = $ffffffff

D2D1_DRAW_TEXT_OPTIONS_NO_SNAP = 1
D2D1_DRAW_TEXT_OPTIONS_NO_CLIP = 2
D2D1_DRAW_TEXT_OPTIONS_NONE = 0
D2D1_DRAW_TEXT_OPTIONS_FORCE_DWORD = $ffffffff

struct D2D1PIXELFORMAT
       format dd ?
       alphaMode dd ?
ends

struct D2D1BITMAPPROPERTIES
       pixelFormat dd ?
       dpiX dd ?
       dpiY dd ?
ends

struct D2D1GRADIENTSTOP
       position dd ?
       color D3DCOLORVALUE
ends

struct D2D1BRUSHPROPERTIES
       opacity dd ?
       transform D2DMATRIX3X2F
ends

struct D2D1BITMAPBRUSHPROPERTIES
       extendModeX dd ?
       extendModeY dd ?
       interpolationMode dd ?
ends

struct D2D1LINEARGRADIENTBRUSHPROPERTIES
       startPoint D3DCOLORVALUE
       endPoint D3DCOLORVALUE
ends

struct D2D1RADIALGRADIENTBRUSHPROPERTIES
       center D3DCOLORVALUE
       gradientOriginOffset D3DCOLORVALUE
       radiusX dd ?
       radiusY dd ?
ends

D2D1_ARC_SIZE_SMALL = 0
D2D1_ARC_SIZE_LARGE = 1
D2D1_ARC_SIZE_FORCE_DWORD = $ffffffff

D2D1_CAP_STYLE_FLAT = 0
D2D1_CAP_STYLE_SQUARE = 1
D2D1_CAP_STYLE_ROUND = 2
D2D1_CAP_STYLE_TRIANGLE = 3
D2D1_CAP_STYLE_FORCE_DWORD = $ffffffff

D2D1_DASH_STYLE_SOLID = 0
D2D1_DASH_STYLE_DASH = 1
D2D1_DASH_STYLE_DOT = 2
D2D1_DASH_STYLE_DASH_DOT = 3
D2D1_DASH_STYLE_DASH_DOT_DOT = 4
D2D1_DASH_STYLE_CUSTOM = 5
D2D1_DASH_STYLE_FORCE_DWORD = 0xffffffff

D2D1_LINE_JOIN_MITER = 0
D2D1_LINE_JOIN_BEVEL = 1
D2D1_LINE_JOIN_ROUND = 2
D2D1_LINE_JOIN_MITER_OR_BEVEL = 3
D2D1_LINE_JOIN_FORCE_DWORD = $ffffffff

D2D1_COMBINE_MODE_UNION = 0
D2D1_COMBINE_MODE_INTERSECT = 1
D2D1_COMBINE_MODE_XOR = 2
D2D1_COMBINE_MODE_EXCLUDE = 3
D2D1_COMBINE_MODE_FORCE_DWORD = $ffffffff

D2D1_GEOMETRY_RELATION_UNKNOWN = 0
D2D1_GEOMETRY_RELATION_DISJOINT = 1
D2D1_GEOMETRY_RELATION_IS_CONTAINED = 2
D2D1_GEOMETRY_RELATION_CONTAINS = 3
D2D1_GEOMETRY_RELATION_OVERLAP = 4
D2D1_GEOMETRY_RELATION_FORCE_DWORD = $ffffffff

D2D1_GEOMETRY_SIMPLIFICATION_OPTION_CUBICS_AND_LINES = 0
D2D1_GEOMETRY_SIMPLIFICATION_OPTION_LINES = 1
D2D1_GEOMETRY_SIMPLIFICATION_OPTION_FORCE_DWORD = $ffffffff

D2D1_FIGURE_BEGIN_FILLED = 0
D2D1_FIGURE_BEGIN_HOLLOW = 1
D2D1_FIGURE_BEGIN_FORCE_DWORD = $ffffffff

D2D1_FIGURE_END_OPEN = 0
D2D1_FIGURE_END_CLOSED = 1
D2D1_FIGURE_END_FORCE_DWORD = $ffffffff

struct D2D1BEZIERSEGMENT
       point1 D2DPOINT2F
       point2 D2DPOINT2F
       point3 D2DPOINT2F
ends

struct D2D1TRIANGLE
       point1 D2DPOINT2F
       point2 D2DPOINT2F
       point3 D2DPOINT2F
ends

D2D1_PATH_SEGMENT_NONE = 0
D2D1_PATH_SEGMENT_FORCE_UNSTROKED = 1
D2D1_PATH_SEGMENT_FORCE_ROUND_LINE_JOIN = 2
D2D1_PATH_SEGMENT_FORCE_DWORD = $ffffffff

D2D1_SWEEP_DIRECTION_COUNTER_CLOCKWISE = 0
D2D1_SWEEP_DIRECTION_CLOCKWISE = 1
D2D1_SWEEP_DIRECTION_FORCE_DWORD = $ffffffff

D2D1_FILL_MODE_ALTERNATE = 0
D2D1_FILL_MODE_WINDING = 1
D2D1_FILL_MODE_FORCE_DWORD = $ffffffff

struct D2D1ARCSEGMENT
       point D2DPOINT2F
       size D2DSIZEF
       rotationAngle dd ?
       sweepDirection dd ?
       arcSize dd ?
ends

struct D2D1QUADRATICBEZIERSEGMENT
       point1 D2DPOINT2F
       point2 D2DPOINT2F
ends

struct D2D1ELLIPSE
       point D2DPOINT2F
       radiusX dd ?
       radiusY dd ?
ends

struct D2D1ROUNDEDRECT
       rect D2DRECTF
       radiusX dd ?
       radiusY dd ?
ends

struct D2D1STROKESTYLEPROPERTIES
       startCap dd ?
       endCap dd ?
       dashCap dd ?
       lineJoin dd ?
       miterLimit dd ?
       dashStyle dd ?
       dashOffset dd ?
ends

D2D1_LAYER_OPTIONS_NONE = 0
D2D1_LAYER_OPTIONS_INITIALIZE_FOR_CLEARTYPE = 1
D2D1_LAYER_OPTIONS_FORCE_DWORD = $ffffffff

struct D2D1LAYERPARAMETERS
       contentBounds D2DRECTF
       geometricMask ID2D1Geometry
       maskAntialiasMode dd ?
       maskTransform D2DMATRIX3X2F
       opacity dd ?
       opacityBrush ID2D1Brush
       layerOptions dd ?
ends

D2D1_WINDOW_STATE_NONE = 0
D2D1_WINDOW_STATE_OCCLUDED = 1
D2D1_WINDOW_STATE_FORCE_DWORD = $ffffffff

D2D1_RENDER_TARGET_USAGE_NONE = 0
D2D1_RENDER_TARGET_USAGE_FORCE_BITMAP_REMOTING = 1
D2D1_RENDER_TARGET_USAGE_FORCE_HARDWARE_RENDERING = 2
D2D1_RENDER_TARGET_USAGE_FORCE_SOFTWARE_RENDERING = 4
D2D1_RENDER_TARGET_USAGE_GDI_COMPATIBLE = 8
D2D1_RENDER_TARGET_USAGE_FORCE_DWORD = $ffffffff

D2D1_PRESENT_OPTIONS_NONE = 0
D2D1_PRESENT_OPTIONS_RETAIN_CONTENTS = 1
D2D1_PRESENT_OPTIONS_IMMEDIATELY = 2
D2D1_PRESENT_OPTIONS_FORCE_DWORD = $ffffffff

struct D2D1RENDERTARGETPROPERTIES
       usage dd ?
       pixelFormat dd ?
       dpiX dd ?
       dpiY dd ?
ends

struct D2D1HWNDRENDERTARGETPROPERTIES
       hwnd dd ?
       pixelSize D2DSIZEU
       presentOptions dd ?
ends

D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE = 0
D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_GDI_COMPATIBLE = 1
D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_FORCE_DWORD = $ffffffff

struct D2D1DRAWINGSTATEDESCRIPTION
     antialiasMode dd ?
     textAntialiasMode dd ?
     tag1 dq ?
     tag2 dq ?
     transform D2DMATRIX3X2F
ends

D2D1_DC_INITIALIZE_MODE_COPY = 0
D2D1_DC_INITIALIZE_MODE_CLEAR = 1
D2D1_DC_INITIALIZE_MODE_FORCE_DWORD = $ffffffff

D2D1_DEBUG_LEVEL_NONE = 0
D2D1_DEBUG_LEVEL_ERROR = 1
D2D1_DEBUG_LEVEL_WARNING = 2
D2D1_DEBUG_LEVEL_INFORMATION = 3
D2D1_DEBUG_LEVEL_FORCE_DWORD = $ffffffff

D2D1_FACTORY_TYPE_SINGLE_THREADED = 0
D2D1_FACTORY_TYPE_MULTI_THREADED = 1
D2D1_FACTORY_TYPE_FORCE_DWORD = $ffffffff

struct D2D1FACTORYOPTIONS
       debugLevel dd ?
ends

;Copyright (c) Microsoft Corporation.  All rights reserved.
;File: D2D1helper.h
;Module Name: D2D
;Description: Helper files over the D2D interfaces and APIs.
AliceBlue = $F0F8FF
AntiqueWhite = $FAEBD7
Aqua = $FFFF
Aquamarine = $7FFFD4
Azure = $F0FFFF
Beige = $F5F5DC
Bisque = 0xFFE4C4
Black = $0
BlanchedAlmond = $FFEBCD
Blue = $FF
BlueViolet = $8A2BE2
Brown = $A52A2A
BurlyWood = $DEB887
CadetBlue = $5F9EA0
Chartreuse = $7FFF00
Chocolate = $D2691E
Coral = $FF7F50
CornflowerBlue = $6495ED
Cornsilk = $FFF8DC
Crimson = $DC143C
Cyan = $FFFF
DarkBlue = $8B
DarkCyan = $8B8B
DarkGoldenrod = $B8860B
DarkGray = $A9A9A9
DarkGreen = $6400
DarkKhaki = $BDB76B
DarkMagenta = $8B008B
DarkOliveGreen = $556B2F
DarkOrange = $FF8C00
DarkOrchid = $9932CC
DarkRed = $8B0000
DarkSalmon = $E9967A
DarkSeaGreen = $8FBC8F
DarkSlateBlue = $483D8B
DarkSlateGray = $2F4F4F
DarkTurquoise = $CED1
DarkViolet = $9400D3
DeepPink = $FF1493
DeepSkyBlue = $BFFF
DimGray = $696969
DodgerBlue = $1E90FF
Firebrick = $B22222
FloralWhite = $FFFAF0
ForestGreen = $228B22
Fuchsia = $FF00FF
Gainsboro = $DCDCDC
GhostWhite = $F8F8FF
Gold = $FFD700
Goldenrod = $DAA520
Gray = $808080
Green = $8000
GreenYellow = $ADFF2F
Honeydew = $F0FFF0
HotPink = $FF69B4
IndianRed = $CD5C5C
Indigo = $4B0082
Ivory = $FFFFF0
Khaki = $F0E68C
Lavender = $E6E6FA
LavenderBlush = $FFF0F5
LawnGreen = $7CFC00
LemonChiffon = $FFFACD
LightBlue = $ADD8E6
LightCoral = $F08080
LightCyan = $E0FFFF
LightGoldenrodYellow = $FAFAD2
LightGreen = $90EE90
LightGray = $D3D3D3
LightPink = $FFB6C1
LightSalmon = $FFA07A
LightSeaGreen = $20B2AA
LightSkyBlue = $87CEFA
LightSlateGray = $778899
LightSteelBlue = $B0C4DE
LightYellow = $FFFFE0
Lime = $FF00
LimeGreen = $32CD32
Linen = $FAF0E6
Magenta = $FF00FF
Maroon = $800000
MediumAquamarine = $66CDAA
MediumBlue = $CD
MediumOrchid = $BA55D3
MediumPurple = $9370DB
MediumSeaGreen = $3CB371
MediumSlateBlue = $7B68EE
MediumSpringGreen = $FA9A
MediumTurquoise = $48D1CC
MediumVioletRed = $C71585
MidnightBlue = $191970
MintCream = $F5FFFA
MistyRose = $FFE4E1
Moccasin = $FFE4B5
NavajoWhite = $FFDEAD
Navy = $80
OldLace = $FDF5E6
Olive = $808000
OliveDrab = $6B8E23
Orange = $FFA500
OrangeRed = $FF4500
Orchid = $DA70D6
PaleGoldenrod = $EEE8AA
PaleGreen = $98FB98
PaleTurquoise = $AFEEEE
PaleVioletRed = $DB7093
PapayaWhip = $FFEFD5
PeachPuff = $FFDAB9
Peru = $CD853F
Pink = $FFC0CB
Plum = $DDA0DD
PowderBlue = $B0E0E6
Purple = $800080
Red = $FF0000
RosyBrown = $BC8F8F
RoyalBlue = $4169E1
SaddleBrown = $8B4513
Salmon = $FA8072
SandyBrown = $F4A460
SeaGreen = $2E8B57
SeaShell = $FFF5EE
Sienna = $A0522D
Silver = $C0C0C0
SkyBlue = $87CEEB
SlateBlue = $6A5ACD
SlateGray = $708090
Snow = $FFFAFA
SpringGreen = $FF7F
SteelBlue = $4682B4
Tan = $D2B48C
Teal = $8080
Thistle = $D8BFD8
Tomato = $FF6347
Turquoise = $40E0D0
Violet = $EE82EE
Wheat = $F5DEB3
White = $FFFFFF
WhiteSmoke = $F5F5F5
Yellow = $FFFF00
YellowGreen = $9ACD32
